<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content=
    "application/xhtml+xml; charset=iso-8859-1" />
    <title>
      Cups-2.3.1
    </title>
    <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" />
    <meta name="generator" content="DocBook XSL Stylesheets V1.78.1" />
    <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
    "text/css" media="print" />
  </head>
  <body class="blfs" id="blfs-2020-04-02">
    <div class="navheader">
      <h4>
        Beyond Linux<sup>�</sup> From Scratch <span class="phrase">(System
        V</span> Edition) - Version 2020-04-02
      </h4>
      <h3>
        Chapter&nbsp;46.&nbsp;Printing
      </h3>
      <ul>
        <li class="prev">
          <a accesskey="p" href="printing.html" title="Printing">Prev</a>
          <p>
            Printing
          </p>
        </li>
        <li class="next">
          <a accesskey="n" href="cups-filters.html" title=
          "cups-filters-1.27.1">Next</a>
          <p>
            cups-filters-1.27.1
          </p>
        </li>
        <li class="up">
          <a accesskey="u" href="printing.html" title=
          "Chapter&nbsp;46.&nbsp;Printing">Up</a>
        </li>
        <li class="home">
          <a accesskey="h" href="../index.html" title=
          "Beyond Linux� From Scratch     (System V Edition) - Version 2020-04-02">
          Home</a>
        </li>
      </ul>
    </div>
    <div class="sect1" lang="en" xml:lang="en">
      <h1 class="sect1">
        <a id="cups" name="cups"></a>Cups-2.3.1
      </h1>
      <div class="package" lang="en" xml:lang="en">
        <h2 class="sect2">
          Introduction to Cups
        </h2>
        <p>
          The Common Unix Printing System (CUPS) is a print spooler and
          associated utilities. It is based on the "Internet Printing
          Protocol" and provides printing services to most PostScript and
          raster printers.
        </p>
        <p>
          This package is known to build and work properly using an LFS-9.1
          platform.
        </p>
        <h3>
          Package Information
        </h3>
        <div class="itemizedlist">
          <ul class="compact">
            <li class="listitem">
              <p>
                Download (HTTP): <a class="ulink" href=
                "https://github.com/apple/cups/releases/download/v2.3.1/cups-2.3.1-source.tar.gz">
                https://github.com/apple/cups/releases/download/v2.3.1/cups-2.3.1-source.tar.gz</a>
              </p>
            </li>
            <li class="listitem">
              <p>
                Download MD5 sum: 8ad8897c97cf4d90f20dac4318f47421
              </p>
            </li>
            <li class="listitem">
              <p>
                Download size: 7.8 MB
              </p>
            </li>
            <li class="listitem">
              <p>
                Estimated disk space required: 64 MB (Add 42 MB for tests)
              </p>
            </li>
            <li class="listitem">
              <p>
                Estimated build time: 0.5 SBU (Add 0.9 SBU for tests)
              </p>
            </li>
          </ul>
        </div>
        <h3>
          Cups Dependencies
        </h3>
        <h4>
          Required
        </h4>
        <p class="required">
          <a class="xref" href="../postlfs/gnutls.html" title=
          "GnuTLS-3.6.13">GnuTLS-3.6.13</a>
        </p>
        <h4>
          Recommended
        </h4>
        <p class="recommended">
          <a class="xref" href="../general/colord.html" title=
          "Colord-1.4.4">colord-1.4.4</a>, <a class="xref" href=
          "../general/dbus.html" title="dbus-1.12.16">dbus-1.12.16</a>,
          <a class="xref" href="../general/libusb.html" title=
          "libusb-1.0.23">libusb-1.0.23</a>, <a class="xref" href=
          "../postlfs/linux-pam.html" title=
          "Linux-PAM-1.3.1">Linux-PAM-1.3.1</a>, and <a class="xref" href=
          "../xsoft/xdg-utils.html" title=
          "xdg-utils-1.1.3">xdg-utils-1.1.3</a>
        </p>
        <h4>
          Optional
        </h4>
        <p class="optional">
          <a class="xref" href="../basicnet/avahi.html" title=
          "Avahi-0.8">Avahi-0.8</a>, <a class="xref" href=
          "../general/libpaper.html" title=
          "libpaper-1.1.24+nmu5">libpaper-1.1.24+nmu5</a>, <a class="xref"
          href="../postlfs/mitkrb.html" title="MIT Kerberos V5-1.18">MIT
          Kerberos V5-1.18</a>, <a class="xref" href=
          "../general/openjdk.html" title=
          "OpenJDK-12.0.2">OpenJDK-12.0.2</a>, <a class="xref" href=
          "../general/php.html" title="PHP-7.4.4">PHP-7.4.4</a>, and
          <a class="xref" href="../general/python2.html" title=
          "Python-2.7.17">Python-2.7.17</a>
        </p>
        <h4>
          Required (Postinstall)
        </h4>
        <p class="required">
          <a class="xref" href="cups-filters.html" title=
          "cups-filters-1.27.1">cups-filters-1.27.1</a>
        </p>
        <h4>
          Optional (Postinstall)
        </h4>
        <p class="optional">
          <a class="xref" href="gutenprint.html" title=
          "Gutenprint-5.3.3">Gutenprint-5.3.3</a> and <a class="ulink" href=
          "https://developers.hp.com/hp-linux-imaging-and-printing">hplip</a>
          (HP printers)
        </p>
        <p class="usernotes">
          User Notes: <a class="ulink" href=
          "http://wiki.linuxfromscratch.org/blfs/wiki/cups">http://wiki.linuxfromscratch.org/blfs/wiki/cups</a>
        </p>
      </div>
      <div class="kernel" lang="en" xml:lang="en">
        <h2 class="sect2">
          <a id="cups-kernel" name="cups-kernel"></a>Kernel Configuration
        </h2>
        <div class="admon note">
          <img alt="[Note]" src="../images/note.png" />
          <h3>
            Note
          </h3>
          <p>
            There used to be a conflict between the <span class=
            "application">Cups</span> <span class="application">libusb</span>
            backend and the usblp kernel driver. This is no longer the case
            and cups will work with both of these enabled.
          </p>
        </div>
        <p>
          If you want to use the kernel usblp driver (for example, if you
          wish to use <span class="application">escputil</span> from
          <a class="xref" href="gutenprint.html" title=
          "Gutenprint-5.3.3">Gutenprint-5.3.3</a>) enable the following
          options in your kernel configuration and recompile the kernel:
        </p>
        <pre class="screen">
<code class="literal">Device Drivers  ---&gt;
  [*] USB support  ---&gt;                          [CONFIG_USB_SUPPORT]
    &lt;*/M&gt;  OHCI HCD (USB 1.1) support            [CONFIG_USB_OHCI_HCD]
    &lt;*/M&gt;  UHCI HCD (most Intel and VIA) support [CONFIG_USB_UHCI_HCD]
    &lt;*/M&gt;  USB Printer support                   [CONFIG_USB_PRINTER]</code>
</pre>
        <p>
          If you have a parallel printer, enable the following options in
          your kernel configuration and recompile the kernel:
        </p>
        <pre class="screen">
<code class="literal">Device Drivers  ---&gt;
  &lt;*/M&gt; Parallel port support  ---&gt;    [CONFIG_PARPORT]
    &lt;*/M&gt; PC-style hardware            [CONFIG_PARPORT_PC]
  Character devices  ---&gt;
    &lt;*/M&gt; Parallel printer support     [CONFIG_PRINTER]</code>
</pre>
      </div>
      <div class="installation" lang="en" xml:lang="en">
        <h2 class="sect2">
          Installation of Cups
        </h2>
        <p>
          You will need to add an <code class="systemitem">lp</code> user, as
          <span class="application">Cups</span> will create some files owned
          by this user. (The <code class="systemitem">lp</code> user is the
          default used by <span class="application">Cups</span>, but may be
          changed to a different user by passing a parameter to the
          <span class="command"><strong>configure</strong></span> script.)
          Use the following command as the <code class=
          "systemitem">root</code> user:
        </p>
        <pre class="root">
<kbd class=
"command">useradd -c "Print Service User" -d /var/spool/cups -g lp -s /bin/false -u 9 lp</kbd>
</pre>
        <p>
          You will also need a dedicated group that will contain users
          allowed to do <span class="application">Cups</span> administrative
          tasks. Add the group by running the following command as the
          <code class="systemitem">root</code> user:
        </p>
        <pre class="root">
<kbd class="command">groupadd -g 19 lpadmin</kbd>
</pre>
        <p>
          If you want to add a user to the <span class=
          "application">Cups</span> administrative group, run the following
          command as the <code class="systemitem">root</code> user:
        </p>
        <pre class="root">
<kbd class="command">usermod -a -G lpadmin <em class=
"replaceable"><code>&lt;username&gt;</code></em></kbd>
</pre>
        <p>
          If you didn't install <a class="xref" href=
          "../xsoft/xdg-utils.html" title=
          "xdg-utils-1.1.3">xdg-utils-1.1.3</a>, use the following
          <span class="command"><strong>sed</strong></span> to change the
          default browser that will be used to access the <span class=
          "application">Cups</span> web interface:
        </p>
        <pre class="userinput">
<kbd class=
"command">sed -i 's#@CUPS_HTMLVIEW@#firefox#' desktop/cups.desktop.in</kbd>
</pre>
        <p>
          Replace <span class="command"><strong>firefox</strong></span> with
          the web browser of your choice.
        </p>
        <p>
          Build <span class="application">Cups</span> by running the
          following commands:
        </p>
        <pre class="userinput">
<kbd class=
"command">sed -i '/stat.h/a #include &lt;asm-generic/ioctls.h&gt;' tools/ipptool.c  &amp;&amp;

CC=gcc CXX=g++ \
./configure --libdir=/usr/lib            \
            --disable-systemd            \
            --with-rcdir=/tmp/cupsinit   \
            --with-system-groups=lpadmin \
            --with-docdir=/usr/share/cups/doc-2.3.1 &amp;&amp;
make</kbd>
</pre>
        <p>
          To test the results, issue: <span class="command"><strong>make -k
          check</strong></span>. An already active graphical session with bus
          address is necessary to run the tests. One test, <code class=
          "filename">httpAddrGetList</code>, is known to fail.
        </p>
        <p>
          Now, as the <code class="systemitem">root</code> user:
        </p>
        <pre class="root">
<kbd class="command">make install &amp;&amp;
rm -rf /tmp/cupsinit &amp;&amp;
ln -svnf ../cups/doc-2.3.1 /usr/share/doc/cups-2.3.1</kbd>
</pre>
        <p>
          Create a basic <span class="application">Cups</span> client
          configuration file by running the following command as the
          <code class="systemitem">root</code> user:
        </p>
        <pre class="root">
<kbd class=
"command">echo "ServerName /run/cups/cups.sock" &gt; /etc/cups/client.conf</kbd>
</pre>
        <div class="admon note">
          <img alt="[Note]" src="../images/note.png" />
          <h3>
            Note
          </h3>
          <p>
            This package installs icon files into the <code class=
            "filename">/usr/share/icons/hicolor</code> hierarchy and you can
            improve system performance and memory usage by updating
            <code class=
            "filename">/usr/share/icons/hicolor/index.theme</code>. To
            perform the update you must have <a class="xref" href=
            "../x/gtk2.html" title="GTK+-2.24.32">GTK+-2.24.32</a> or
            <a class="xref" href="../x/gtk3.html" title=
            "GTK+-3.24.16">GTK+-3.24.16</a> installed and issue the following
            command as the <code class="systemitem">root</code> user:
          </p>
          <pre class="userinput">
<kbd class=
"command">gtk-update-icon-cache -qtf /usr/share/icons/hicolor</kbd>
</pre>
        </div>
      </div>
      <div class="commands" lang="en" xml:lang="en">
        <h2 class="sect2">
          Command Explanations
        </h2>
        <p>
          <span class="command"><strong>sed ...
          tools/ipptool.c</strong></span>: This sed fixes a bug caused by
          glibc-2.30 changing the user-space API for sockets.
        </p>
        <p>
          <code class="envar">CC=gcc CXX=g++</code>: This environment
          variable ensures that gcc is used, if clang is installed. Remove
          it, if you prefer to use clang. Using clang almost doubles build
          time and slightly decreases build disk space. Installed disk space
          is not appreciably modified.
        </p>
        <p>
          <em class="parameter"><code>--disable-systemd</code></em>: Systemd
          is not supported by this version of BLFS.
        </p>
        <p>
          <em class="parameter"><code>--with-rcdir=/tmp/cupsinit</code></em>:
          This switch tells the build process to install the shipped
          bootscript into <code class="filename">/tmp</code> instead of
          <code class="filename">/etc/rc.d</code>.
        </p>
        <p>
          <em class=
          "parameter"><code>--with-system-groups=lpadmin</code></em>: This
          switch ensures that only <code class="systemitem">lpadmin</code>
          will be used as the <span class="application">Cups</span>
          administrative group.
        </p>
        <p>
          <code class="option">--disable-libusb</code>: Use this switch if
          you have installed <a class="xref" href="../general/libusb.html"
          title="libusb-1.0.23">libusb-1.0.23</a>, but wish to use the kernel
          usblp driver.
        </p>
        <p>
          <code class="option">--enable-libpaper</code>: Use this switch if
          you have installed <span class="application">libpaper</span> and
          wish to use it with <span class="application">Cups</span>.
        </p>
      </div>
      <div class="configuration" lang="en" xml:lang="en">
        <h2 class="sect2">
          Configuring Cups
        </h2>
        <div class="sect3" lang="en" xml:lang="en">
          <h3 class="sect3">
            <a id="cups-config" name="cups-config"></a>
          </h3>
          <h4 class="title">
            <a id="cups-config" name="cups-config"></a>Config Files
          </h4>
          <p>
            <code class="filename">/etc/cups/*</code>
          </p>
        </div>
        <div class="sect3" lang="en" xml:lang="en">
          <h3 class="sect3"></h3>
          <h4 class="title">
            <a id="idm140006414101440" name=
            "idm140006414101440"></a>Configuration Information
          </h4>
          <p>
            Normally, printers are set up via a web browser. The <span class=
            "application">Cups</span> server will normally connect via the
            url http://localhost:631. From there printers, print jobs, and
            the server configuration can be set up and managed. Remote system
            administration can also be set up. Configuration can also be done
            from the command line via the <span class=
            "command"><strong>lpadmin</strong></span>, <span class=
            "command"><strong>lpoptions</strong></span>, and <span class=
            "command"><strong>lpstat</strong></span> commands.
          </p>
          <p>
            Configuration of <span class="application">Cups</span> is
            dependent on the type of printer and can be complex. Generally,
            PostScript printers are easier. For detailed instructions on
            configuration and use of <span class="application">Cups</span>,
            see <a class="ulink" href=
            "http://www.cups.org/documentation.php">http://www.cups.org/documentation.php</a>.
          </p>
          <p>
            For non-PostScript printers to print with <span class=
            "application">Cups</span>, you need to install <a class="xref"
            href="gs.html" title="ghostscript-9.52">ghostscript-9.52</a> to
            convert PostScript to raster images and a driver (e.g. from
            <a class="xref" href="gutenprint.html" title=
            "Gutenprint-5.3.3">Gutenprint-5.3.3</a>) to convert the resulting
            raster images to a form that the printer understands. <a class=
            "ulink" href=
            "https://wiki.linuxfoundation.org/openprinting/database/foomatic">
            Foomatic</a> drivers use <a class="xref" href="gs.html" title=
            "ghostscript-9.52">ghostscript-9.52</a> to convert PostScript to
            a printable form directly, but this is considered suboptimal by
            <span class="application">Cups</span> developers.
          </p>
        </div>
        <div class="sect3" lang="en" xml:lang="en">
          <h3 class="sect3"></h3>
          <h4 class="title">
            <a id="idm140006414089552" name="idm140006414089552"></a>Linux
            PAM Configuration
          </h4>
          <p>
            If <span class="application">CUPS</span> has been built with
            <span class="application">Linux PAM</span> support, you need to
            create a <span class="application">PAM</span> configuration file
            to get it working correctly with BLFS.
          </p>
          <p>
            Issue the following command as the <code class=
            "systemitem">root</code> user to create the configuration file
            for <span class="application">Linux PAM</span>:
          </p>
          <pre class="root">
<kbd class="command">cat &gt; /etc/pam.d/cups &lt;&lt; "EOF"
<code class="literal"># Begin /etc/pam.d/cups

auth    include system-auth
account include system-account
session include system-session

# End /etc/pam.d/cups</code>
EOF</kbd>
</pre>
        </div>
        <div class="sect3" lang="en" xml:lang="en">
          <h3 class="sect3">
            <a id="cups-init" name="cups-init"></a>
          </h3>
          <h4 class="title">
            <a id="cups-init" name="cups-init"></a><span class="phrase">Boot
            Script</span>
          </h4>
          <p>
            If you want the <span class="application">Cups</span> print
            service to start automatically when the system is booted, install
            the init script included in the <a class="xref" href=
            "../introduction/bootscripts.html" title=
            "BLFS Boot Scripts">blfs-bootscripts-20191204</a> package:
          </p>
          <pre class="root">
<kbd class="command">make install-cups</kbd>
</pre>
        </div>
      </div>
      <div class="content" lang="en" xml:lang="en">
        <h2 class="sect2">
          Contents
        </h2>
        <div class="segmentedlist">
          <div class="seglistitem">
            <div class="seg">
              <strong class="segtitle">Installed Programs:</strong>
              <span class="segbody">accept, cancel, cupsaccept, cupsaddsmb,
              cups-config, cupsctl, cupsd, cupsdisable, cupsenable,
              cupsfilter, cupsreject, cupstestdsc, cupstestppd, ippfind,
              ipptool, lp, lpadmin, lpc, lpinfo, lpmove, lpoptions, lpq, lpr,
              lprm, lpstat, ppdc, ppdhtml, ppdi, ppdmerge, ppdpo, and
              reject</span>
            </div>
            <div class="seg">
              <strong class="segtitle">Installed Libraries:</strong>
              <span class="segbody">libcupscgi.so, libcupsimage.so,
              libcupsmime.so, libcupsppdc.so, and libcups.so</span>
            </div>
            <div class="seg">
              <strong class="segtitle">Installed Directories:</strong>
              <span class="segbody">/etc/cups, /usr/{include,lib,share}/cups,
              /usr/share/doc/cups-2.3.1, and
              /var/{cache,log,run,spool}/cups</span>
            </div>
          </div>
        </div>
        <div class="variablelist">
          <h3>
            Short Descriptions
          </h3>
          <table border="0" class="variablelist">
            <colgroup>
              <col align="left" valign="top" />
              <col />
            </colgroup>
            <tbody>
              <tr>
                <td>
                  <p>
                    <a id="accept" name="accept"></a><span class=
                    "term"><span class=
                    "command"><strong>accept</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    instructs the printing system to accept print jobs to the
                    specified destinations.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="cancel-cups" name="cancel-cups"></a><span class=
                    "term"><span class=
                    "command"><strong>cancel</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    cancels existing print jobs from the print queues.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="cupsaccept" name="cupsaccept"></a><span class=
                    "term"><span class=
                    "command"><strong>cupsaccept</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    accept jobs sent to a destination.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="cupsaddsmb" name="cupsaddsmb"></a><span class=
                    "term"><span class=
                    "command"><strong>cupsaddsmb</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    exports printers to the <span class=
                    "application">Samba</span> software for use with Windows
                    clients.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="cups-config-prog" name=
                    "cups-config-prog"></a><span class="term"><span class=
                    "command"><strong>cups-config</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a <span class="application">Cups</span> program
                    configuration utility.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="cupsctl" name="cupsctl"></a><span class=
                    "term"><span class=
                    "command"><strong>cupsctl</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    updates or queries the cupsd.conf file for a server.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="cupsd" name="cupsd"></a><span class=
                    "term"><span class=
                    "command"><strong>cupsd</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is the scheduler for the Common Unix Printing System.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="cupsdisable" name="cupsdisable"></a><span class=
                    "term"><span class=
                    "command"><strong>cupsdisable</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    stop printers and classes.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="cupsenable" name="cupsenable"></a><span class=
                    "term"><span class=
                    "command"><strong>cupsenable</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    start printers and classes.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="cupsfilter" name="cupsfilter"></a><span class=
                    "term"><span class=
                    "command"><strong>cupsfilter</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a front-end to the <span class=
                    "application">Cups</span> filter subsystem which allows
                    you to convert a file to a specific format.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="cupsreject" name="cupsreject"></a><span class=
                    "term"><span class=
                    "command"><strong>cupsreject</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    reject jobs sent to a destination.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="cupstestdsc" name="cupstestdsc"></a><span class=
                    "term"><span class=
                    "command"><strong>cupstestdsc</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    tests the conformance of PostScript files.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="cupstestppd" name="cupstestppd"></a><span class=
                    "term"><span class=
                    "command"><strong>cupstestppd</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    tests the conformance of PPD files.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="ippfind" name="ippfind"></a><span class=
                    "term"><span class=
                    "command"><strong>ippfind</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    finds internet printing protocol printers.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="ipptool" name="ipptool"></a><span class=
                    "term"><span class=
                    "command"><strong>ipptool</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    sends IPP requests to the specified URI and tests and/or
                    displays the results.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="lp-cups" name="lp-cups"></a><span class=
                    "term"><span class=
                    "command"><strong>lp</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    submits files for printing or alters a pending job.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="lpadmin" name="lpadmin"></a><span class=
                    "term"><span class=
                    "command"><strong>lpadmin</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    configures printer and class queues provided by
                    <span class="application">Cups</span>.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="lpc-cups" name="lpc-cups"></a><span class=
                    "term"><span class=
                    "command"><strong>lpc</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    provides limited control over printer and class queues
                    provided by <span class="application">Cups</span>.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="lpinfo" name="lpinfo"></a><span class=
                    "term"><span class=
                    "command"><strong>lpinfo</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    lists the available devices or drivers known to the
                    <span class="application">Cups</span> server.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="lpmove" name="lpmove"></a><span class=
                    "term"><span class=
                    "command"><strong>lpmove</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    moves the specified job to a new destination.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="lpoptions" name="lpoptions"></a><span class=
                    "term"><span class=
                    "command"><strong>lpoptions</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    displays or sets printer options and defaults.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="lpq-cups" name="lpq-cups"></a><span class=
                    "term"><span class=
                    "command"><strong>lpq</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    shows the current print queue status on the named
                    printer.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="lpr-cups" name="lpr-cups"></a><span class=
                    "term"><span class=
                    "command"><strong>lpr</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    submits files for printing.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="lprm-cups" name="lprm-cups"></a><span class=
                    "term"><span class=
                    "command"><strong>lprm</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    cancels print jobs that have been queued for printing.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="lpstat-cups" name="lpstat-cups"></a><span class=
                    "term"><span class=
                    "command"><strong>lpstat</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    displays status information about the current classes,
                    jobs, and printers.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="ppdc" name="ppdc"></a><span class=
                    "term"><span class=
                    "command"><strong>ppdc</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    compiles PPDC source files into one or more PPD files.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="ppdhtml" name="ppdhtml"></a><span class=
                    "term"><span class=
                    "command"><strong>ppdhtml</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    reads a driver information file and produces a HTML
                    summary page that lists all of the drivers in a file and
                    the supported options.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="ppdi" name="ppdi"></a><span class=
                    "term"><span class=
                    "command"><strong>ppdi</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    imports one or more PPD files into a PPD compiler source
                    file.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="ppdmerge" name="ppdmerge"></a><span class=
                    "term"><span class=
                    "command"><strong>ppdmerge</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    merges two or more PPD files into a single,
                    multi-language PPD file.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="ppdpo" name="ppdpo"></a><span class=
                    "term"><span class=
                    "command"><strong>ppdpo</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    extracts UI strings from PPDC source files and updates
                    either a GNU gettext or Mac OS X strings format message
                    catalog source file for translation.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="reject" name="reject"></a><span class=
                    "term"><span class=
                    "command"><strong>reject</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    instructs the printing system to reject print jobs to the
                    specified destinations.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="libcups" name="libcups"></a><span class=
                    "term"><code class="filename">libcups.so</code></span>
                  </p>
                </td>
                <td>
                  <p>
                    contains the <span class="application">Cups</span> API
                    functions.
                  </p>
                </td>
              </tr>
            </tbody>
          </table>
        </div>
      </div>
      <p class="updated">
        Last updated on 2020-03-25 07:06:24 -0500
      </p>
    </div>
    <div class="navfooter">
      <ul>
        <li class="prev">
          <a accesskey="p" href="printing.html" title="Printing">Prev</a>
          <p>
            Printing
          </p>
        </li>
        <li class="next">
          <a accesskey="n" href="cups-filters.html" title=
          "cups-filters-1.27.1">Next</a>
          <p>
            cups-filters-1.27.1
          </p>
        </li>
        <li class="up">
          <a accesskey="u" href="printing.html" title=
          "Chapter&nbsp;46.&nbsp;Printing">Up</a>
        </li>
        <li class="home">
          <a accesskey="h" href="../index.html" title=
          "Beyond Linux� From Scratch     (System V Edition) - Version 2020-04-02">
          Home</a>
        </li>
      </ul>
    </div>
  </body>
</html>
